class Personale::MansioniController < DefaultController
  require_role self.parent_name.underscore
  record_select :search_on => :name, :order_by => 'name', :full_text_search => true
  active_scaffold :mansione do |config|
    config.label = Application.controller_label(self)
    list.sorting = {:name => 'ASC'}
    config.actions.add :field_search, :config_list, :export
    
    columns = [:name, :tipo_mansione, :centro_costo, :descrizione, :tipi_visita_medica, :requisiti_formativi]
    columns_list = [:name, :tipo_mansione, :centro_costo, :descrizione]
    config.columns = columns
    config.config_list.default_columns = columns_list
    
    config.create.columns.exclude :personale, :tipi_visita_medica
    
    [:tipo_mansione, :centro_costo, :tipi_visita_medica].each { |i|
      config.columns[i].form_ui = :select }
    [:personale, :requisiti_formativi].each { |i|
      config.columns[i].form_ui = :record_select }
    [:tipo_mansione, :centro_costo, :descrizione].each { |i| config.columns[i].inplace_edit = :ajax }
    config.columns[:name].label = "Nome"
    config.columns[:descrizione].options = SMALL_TEXTAREA
    config.columns[:tipo_mansione].options = {:options => Mansione::TIPO_MANSIONE.map(&:to_sym), :include_blank => as_(:_select_)}
    
    config.columns[:centro_costo].clear_link
    config.columns[:name].set_link('nested', :parameters => {:associations => :personale})
  end
end
